package com.testdocs.client.version;

import com.google.gwt.user.client.rpc.RemoteService;
import com.google.gwt.user.client.rpc.RemoteServiceRelativePath;
import com.testdocs.client.error.ObjectAccessErrorException;
import com.testdocs.client.validation.ConstraintViolationException;

@RemoteServiceRelativePath("version")
public interface VersionService extends RemoteService {
	
	public VersionInfo[] getVersions(String projectId) throws ObjectAccessErrorException;
	
	public VersionInfo createVersion(VersionInfo newVersion, String basedOnVersionId) throws ObjectAccessErrorException, ConstraintViolationException;

	public void rename(VersionInfo versionInfo) throws ObjectAccessErrorException, ConstraintViolationException;
	public void remove(VersionInfo versions[]) throws ObjectAccessErrorException;
}
